'\" t
.\"     Title: testparm
.\"    Author: [see the "AUTHOR" section]
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
.\"      Date: 02/25/2024
.\"    Manual: User Commands
.\"    Source: Samba 4.19.5
.\"  Language: English
.\"
.TH "TESTPARM" "1" "02/25/2024" "Samba 4\&.19\&.5" "User Commands"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.\" http://bugs.debian.org/507673
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\" -----------------------------------------------------------------
.\" * set default formatting
.\" -----------------------------------------------------------------
.\" disable hyphenation
.nh
.\" disable justification (adjust text to left margin only)
.ad l
.\" -----------------------------------------------------------------
.\" * MAIN CONTENT STARTS HERE *
.\" -----------------------------------------------------------------
.SH "NAME"
testparm \- check an smb\&.conf configuration file for internal correctness
.SH "SYNOPSIS"
.HP \w'\ 'u
testparm [\-s|\-\-suppress\-prompt] [\-v|\-\-verbose] [\-?|\-\-help] [\-\-usage] [\-d|\-\-debuglevel=DEBUGLEVEL] [\-\-debug\-stdout] {config\ filename} [hostname\ hostIP]
.SH "DESCRIPTION"
.PP
This tool is part of the
\fBsamba\fR(7)
suite\&.
.PP
testparm
is a very simple test program to check an
\fBsmbd\fR(8)
configuration file for internal correctness\&. If this program reports no problems, you can use the configuration file with confidence that
smbd
will successfully load the configuration file\&.
.PP
Note that this is
\fINOT\fR
a guarantee that the services specified in the configuration file will be available or will operate as expected\&.
.PP
If the optional host name and host IP address are specified on the command line, this test program will run through the service entries reporting whether the specified host has access to each service\&.
.PP
If
testparm
finds an error in the
smb\&.conf
file it returns an exit code of 1 to the calling program, else it returns an exit code of 0\&. This allows shell scripts to test the output from
testparm\&.
.SH "OPTIONS"
.PP
\-s|\-\-suppress\-prompt
.RS 4
Without this option,
testparm
will prompt for a carriage return after printing the service names and before dumping the service definitions\&.
.RE
.PP
\-v|\-\-verbose
.RS 4
If this option is specified, testparm will also output all options that were not used in
\fBsmb.conf\fR(5)
and are thus set to their defaults\&.
.RE
.PP
\-\-parameter\-name parametername
.RS 4
Dumps the named parameter\&. If no section\-name is set the view is limited by default to the global section\&. It is also possible to dump a parametrical option\&. Therefore the option has to be separated by a colon from the parametername\&.
.RE
.PP
\-\-section\-name sectionname
.RS 4
Dumps the named section\&.
.RE
.PP
\-\-show\-all\-parameters
.RS 4
Show the parameters, type, possible values\&.
.RE
.PP
\-l|\-\-skip\-logic\-checks
.RS 4
Skip the global checks\&.
.RE
.PP
\-?|\-\-help
.RS 4
Print a summary of command line options\&.
.RE
.PP
\-\-usage
.RS 4
Display brief usage message\&.
.RE
.PP
\-d|\-\-debuglevel=DEBUGLEVEL
.RS 4
\fIlevel\fR
is an integer from 0 to 10\&. The default value if this parameter is not specified is 1 for client applications\&.
.sp
The higher this value, the more detail will be logged to the log files about the activities of the server\&. At level 0, only critical errors and serious warnings will be logged\&. Level 1 is a reasonable level for day\-to\-day running \- it generates a small amount of information about operations carried out\&.
.sp
Levels above 1 will generate considerable amounts of log data, and should only be used when investigating a problem\&. Levels above 3 are designed for use only by developers and generate HUGE amounts of log data, most of which is extremely cryptic\&.
.sp
Note that specifying this parameter here will override the
\m[blue]\fBlog level\fR\m[]
parameter in the
/etc/samba/smb\&.conf
file\&.
.RE
.PP
\-\-debug\-stdout
.RS 4
This will redirect debug output to STDOUT\&. By default all clients are logging to STDERR\&.
.RE
.PP
\-\-configfile=<configuration file>
.RS 4
The file specified contains the configuration details required by the client\&. The information in this file can be general for client and server or only provide client specific like options such as
\m[blue]\fBclient smb encrypt\fR\m[]\&. See
/etc/samba/smb\&.conf
for more information\&. The default configuration file name is determined at compile time\&.
.RE
.PP
\-\-option=<name>=<value>
.RS 4
Set the
\fBsmb.conf\fR(5)
option "<name>" to value "<value>" from the command line\&. This overrides compiled\-in defaults and options read from the configuration file\&. If a name or a value includes a space, wrap whole \-\-option=name=value into quotes\&.
.RE
.PP
\-V|\-\-version
.RS 4
Prints the program version number\&.
.RE
.PP
configfilename
.RS 4
This is the name of the configuration file to check\&. If this parameter is not present then the default
\fBsmb.conf\fR(5)
file will be checked\&.
.RE
.PP
hostname
.RS 4
If this parameter and the following are specified, then
testparm
will examine the
\fIhosts allow\fR
and
\fIhosts deny\fR
parameters in the
\fBsmb.conf\fR(5)
file to determine if the hostname with this IP address would be allowed access to the
smbd
server\&. If this parameter is supplied, the hostIP parameter must also be supplied\&.
.RE
.PP
hostIP
.RS 4
This is the IP address of the host specified in the previous parameter\&. This address must be supplied if the hostname parameter is supplied\&.
.RE
.SH "FILES"
.PP
\fBsmb.conf\fR(5)
.RS 4
This is usually the name of the configuration file used by
\fBsmbd\fR(8)\&.
.RE
.SH "DIAGNOSTICS"
.PP
The program will issue a message saying whether the configuration file loaded OK or not\&. This message may be preceded by errors and warnings if the file did not load\&. If the file was loaded OK, the program then dumps all known service details to stdout\&.
.PP
For certain use cases, SMB protocol requires use of cryptographic algorithms which are known to be weak and already broken\&. DES and ARCFOUR (RC4) ciphers and the SHA1 and MD5 hash algorithms are considered weak but they are required for backward compatibility\&. The testparm utility shows whether the Samba tools will fall back to these weak crypto algorithms if it is not possible to use strong cryptography by default\&. In FIPS mode weak crypto cannot be enabled\&.
.SH "VERSION"
.PP
This man page is part of version 4\&.19\&.5 of the Samba suite\&.
.SH "SEE ALSO"
.PP
\fBsmb.conf\fR(5),
\fBsmbd\fR(8)
.SH "AUTHOR"
.PP
The original Samba software and related utilities were created by Andrew Tridgell\&. Samba is now developed by the Samba Team as an Open Source project similar to the way the Linux kernel is developed\&.
